/**
 * 病案浏览批量审批
 */
  var bCurrentData;//保存当前点击行的数据
 (function(){
	 
	//加载所有申请分类
	$("#bPurpose-application").combobox({
		url : "systemMaintenance/loadApplyType",
		valueField : "FID",
		textField : "FNAME",
		width:120,
		onLoadSuccess : function(data){
			if (data.length>0) {
				$("#bPurpose-application").combobox('select',data[0].FID);   //默认勾选第一个申请分类
			}
		},
		onLoadError : errorPromt
	});
	
	//加载审批列表datagrid
	$('#bPurposeData').datagrid({
		toolbar : "#toolbar-bPurposeData",
		rownumbers : true,
		singleSelect : true,
		fit : true,
		fitColumns : window.innerWidth<1280? false : true,//根据屏幕的分辨率来对表格进行排版,
		border : false,
		pageSize: 15,
		pagination: true,
		onClickRow : ExaminationBatchMedical,
		pageList:[15,20,30],
		onLoadError : errorPromt,
	    columns:[[
	    	{field:'fspjg',title:'审批结果',width:100,align:'center',
	    			formatter : function (value, row, index) {
			          if (row.fspzt == '批准' || row.fspzt == '驳回') {
			          		return row.fspzt;
			          }
			          return "";
			        }},
	        {field:'fspzt',title:'状态',width:100,align:'center'},
	        {field:'flc',title:'当前流程',width:120,align:'center',
	        	    formatter : function (value, row, index) {
			          if (row.fspzt == '批准') {
			          		return '结束';
			          }
			          return value;
			        }},
	        {field:'fsqrq',title:'申请日期',width:120,align:'center',
        		  formatter : function (value, row, index) {
			          return new Date(value).format("yyyy-MM-dd");
			      }},
	        {field:'fsqdays',title:'天数',width:60,align:'center'},
	        {field:'fqsrq',title:'开始日期',width:120,align:'center',
        		  formatter : function (value, row, index) {
        		  	if (value != null) {
			          return new Date(value).format("yyyy-MM-dd");
        		  	}
			      }},
	        {field:'fjsrq',title:'结束日期',width:120,align:'center',
        		  formatter : function (value, row, index) {
        		  	if (value != null) {
			          return new Date(value).format("yyyy-MM-dd");
        		  	}
			      }},
	        {field:'fjysqr',title:'申请人',width:100,align:'center'},
	        {field:'fsqmd',title:'申请目的',width:100,align:'center'},
	        {field:'fsqtjwz',title:'申请条件',width:200,align:'center',
		        formatter : function(value, rec) {
					return "<span title='"+value+"'>"+value+"</span>";
		        }}
	    ]],
	    onLoadError : errorPromt
	});
	
	//浏览期限时间单位
	$("#bApproval-days").combobox({
		editable : false,
		width : 60,
		panelHeight :50,
		valueField : "id",
		textField : "text",
		data : [{'id': 1,'text': '天'},{'id': 2,'text': '小时'}],
		onLoadSuccess : function(data){
			$("#bApproval-days").combobox('select',data[0].id);   //默认勾选第一个申请分类
		}
	});
	
 })();
 
  //点击表格数据事件
 function ExaminationBatchMedical(index, row){
 	bCurrentData = row;
 	
 	$('#bshow-PurposeApplication').text(row.fsqmd);   //申请目的
 	$('#bshow-PurposeDays').text(row.fsqdays);        //申请天数
 	$('#bApply-Description').val(row.fremark);        //申请描述
 	
 	$('#bBrowsingPeriod').textbox('setText',row.fspday);      //浏览期限
 	$("#bApproval-days").combobox('setValue',row.FSPDAYUNIT); //浏览期限时间单位
 	
 	$('#bshow-Approver').text(row.fspy != null?row.fspy: '');          //审批员
 	$('#bshow-ApprovalDate').text(row.fsprq != null?new Date(row.fsprq).format("yyyy-MM-dd"):'');     //审批时间
 	$('#bOld-ApprovalDescription').val(row.fspms);//审批描述
 	
 	if (row.fspzt == '批准' || row.fspzt == '驳回') {
 		$('#bApproval,#bNotApproval,#bCompulsoryRecall').linkbutton('disable');
 	}else{
 		//查看当前用户是否具有审批该病案的权限
 		$.ajax({
	 		url: "MedicalCheckManage/checkUserHaveJuris",
	 		type: 'post',
	 		dataType: 'json',
	 		async: false,
	 		data: {fjymdid: bCurrentData.fjymdid, fdqspjb: bCurrentData.fxjlc},
	 		success: function(data){
	 			//判断当前用户存在审批权限，不禁用按钮
	 			if (data.length>0) {
	 				$('#bApproval,#bNotApproval,#bCompulsoryRecall').linkbutton('enable');
	 			}else{
	 				$('#bApproval,#bNotApproval,#bCompulsoryRecall').linkbutton('disable');
	 			}
	 		}
 		})
 	}
 }
 
 //查询需要审批的病案批量信息
 function checkPurposeDataBatch(){
 	
 	var startDate = $('#bstart-date').datebox('getValue');//获取开始日期
 	var endDate = $('#bend-date').datebox('getValue');    //获取结束日期
 	
 	var fjymd = $('#bPurpose-application').combobox('getValue'); //获取借阅目的
 	var scheckFsqr = $('#bcheck-fsqr').val(); //获取申请人值
 	
 	//加载数据
 	$('#bPurposeData').datagrid({
 		url : "MedicalCheckManage/checkPurposeDataBatch",
		queryParams : {startDate: startDate,
					   endDate: endDate,
					   fjymd: fjymd,
					   scheckFsqr: scheckFsqr},
		onLoadError : errorPromt
 	})
 }
 
 //审批通过执行事件
 function bApproval(){
 	//首先查看下级是否存在审批人员，不存在则提示该用户
 	$.ajax({
 		url: "MedicalCheckManage/checkNextExaminationPerson",
 		type: 'post',
 		dataType: 'json',
 		async: false,
 		data: {fjymdid: bCurrentData.fjymdid, fdqspjb: bCurrentData.fxjlc},
 		success: function(data){
 			//判断当前审批级别是否为结束(flase 为结束)
 			if (data == false) {
 				//调用通用批准通过方法
 				submitbApprovalMedicol(bCurrentData, null, '批准');
 			}else{
 				//下一级审批级别存在审批人员
 				if (data[0].FSPJBID != null) {
 					//调用通用批准通过方法
 					submitbApprovalMedicol(bCurrentData, data[0], '中间流程');
 				}else{   //下一级审批级别不存在审批人员
	 				$.messager.confirm('确认','下级审批没有人员审批病案,确认后前往配置审批人员。是否确认？',function(r){    
					    if (r){    
					    	//调用通用批准通过方法
					    	submitbApprovalMedicol(bCurrentData, data[0], '中间流程');
					    }    
					});
 				}
 			}
 		}
 		
 	})
 }
 
  //审批不通过执行事件
 function bNotApproval(){
 	var fspms = $('#bApprovalDescription').val();
 	//判断如果在单个申请记录表中不存在审批记录,直接执行驳回方法
 	if (bCurrentData.fjlid == 0) {
 		submitbApprovalMedicol(bCurrentData, null, '驳回');
 	}else{
	 	$.ajax({
	 		url: "MedicalCheckManage/submitbNotApprovalMedicol",
	 		type: 'post',
	 		dataType: 'json',
	 		async: false,
	 		data: {fjlid: bCurrentData.fjlid, fxjlc: bCurrentData.fxjlc, fspms: fspms},
	 		success: function(data){
	 			if (data) {
					$.messager.alert('提示','审批成功','info');
					$('#bPurposeData').datagrid('reload');
				}else{
					$.messager.alert('提示','审批失败','info');
				}
	 		}
	 		
	 	})
 	}
 }
 
 //强制收回事件(驳回)
 function bCompulsoryRecall(){
 	submitbApprovalMedicol(bCurrentData, null, '驳回');
 }
 
 
 //通用批准通过方法
 function submitbApprovalMedicol(applydata, approvaldata, typeName){
 	
 	var fspday = $('#bBrowsingPeriod').textbox('getText');     //获取审批数值
 	var fspdayunit = $("#bApproval-days").combobox('getValue');//获取审批数值单位
 	
 	//判断浏览期限是否为空
 	if ("" == fspday && typeName != '驳回') {
 		$.messager.alert('提示','浏览期限不能为空','info');
 		return;
 	}
 	var fspms = $('#bApprovalDescription').val();
 	
 	//判断下级流程
 	var fxjlc="";
 	if (approvaldata != null) {
 		fxjlc = approvaldata.FPX;
 	}
 	
 	//执行审批通过操作
 	$.ajax({
 		url: "MedicalCheckManage/submitbApprovalMedicol",
 		type: 'post',
 		dataType: 'json',
 		async: false,
 		data: {fsqid: applydata.fid, 
 			   fqsrq: applydata.fsqrq, 
		 	   fspms: fspms, 
		 	   fspday: fspday, 
		 	   fspdayunit: fspdayunit, 
		 	   fspzt: typeName,
		 	   fdqlc: applydata.flc, 
		 	   fxjlc: fxjlc},
 		success: function(data){
 			if (data) {
				$.messager.alert('提示','审批成功','info');
				$('#bPurposeData').datagrid('reload');
			}else{
				$.messager.alert('提示','审批失败','info');
			}
 		}
 	})
 	
 }